package prh25.biblioteca.entity.dao.hibernate;

import prh25.biblioteca.entity.dao.AlunoDAO;
import prh25.biblioteca.entity.dao.ArquivoDAO;
import prh25.biblioteca.entity.dao.CoordenadorDAO;
import prh25.biblioteca.entity.dao.DAOFactory;
import prh25.biblioteca.entity.dao.DocumentoDAO;
import prh25.biblioteca.entity.dao.EnderecoDAO;
import prh25.biblioteca.entity.dao.ProfessorDAO;
import prh25.biblioteca.entity.dao.ProjetoPesquisaDAO;
import prh25.biblioteca.entity.dao.RevisorDAO;
import prh25.biblioteca.entity.dao.UsuarioDAO;
import prh25.biblioteca.entity.dao.UsuarioExternoDAO;



/**
 * 
 *
 * @see http://www.hibernate.org/43.html
 * @author Wilson
 */
public class HibernateDAOFactory extends DAOFactory {

	/* (non-Javadoc)
	 * @see prh25.DAOFactory#buildAlunoDAO()
	 */
	@Override
	public AlunoDAO buildAlunoDAO() {
		return new AlunoHibernateDAO();
	}
	
	/* (non-Javadoc)
	 * @see prh25.DAOFactory#buildArquivoDAO()
	 */
	@Override
	public ArquivoDAO buildArquivoDAO() {
		return new ArquivoHibernateDAO();
	}
	
	/* (non-Javadoc)
	 * @see prh25.DAOFactory#buildCoordenadorDAO()
	 */
	@Override
	public CoordenadorDAO buildCoordenadorDAO() {
		return new CoordenadorHibernateDAO();
	}
	
	/* (non-Javadoc)
	 * @see prh25.DAOFactory#buildDocumentoDAO()
	 */
	@Override
	public DocumentoDAO buildDocumentoDAO() {
		return new DocumentoHibernateDAO();
	}
	
	/* (non-Javadoc)
	 * @see prh25.DAOFactory#buildEnderecoDAO()
	 */
	@Override
	public EnderecoDAO buildEnderecoDAO() {
		return new EnderecoHibernateDAO();
	}
	
	/* (non-Javadoc)
	 * @see prh25.DAOFactory#buildProfessorDAO()
	 */
	@Override
	public ProfessorDAO buildProfessorDAO() {
		return new ProfessorHibernateDAO();
	}
	
	/* (non-Javadoc)
	 * @see prh25.DAOFactory#buildProjetoPesquisaDAO()
	 */
	@Override
	public ProjetoPesquisaDAO buildProjetoPesquisaDAO() {
		return new ProjetoPesquisaHibernateDAO();
	}
	
	/* (non-Javadoc)
	 * @see prh25.DAOFactory#buildRevisorDAO()
	 */
	@Override
	public RevisorDAO buildRevisorDAO() {
		return new RevisorHibernateDAO();
	}
	
	/* (non-Javadoc)
	 * @see prh25.DAOFactory#buildUsuarioDAO()
	 */
	@Override
	public UsuarioDAO buildUsuarioDAO() {
		return new UsuarioHibernateDAO();
	}
	
	/* (non-Javadoc)
	 * @see prh25.DAOFactory#buildUsuarioExternoDAO()
	 */
	@Override
	public UsuarioExternoDAO buildUsuarioExternoDAO() {
		return new UsuarioExternoHibernateDAO();
	}
	
}
